﻿@model FlyingCircusWebIS.ViewModels.CidadeVM.CidadeIndexVM

@{
    ViewBag.Title = "Cidades";
}

<h2>Cidades</h2>

<hr />
<a href="@Url.Action("Form")">Novo</a>
<hr />
@{
    if (Model.TotalRegistros > 0)
    {
        
        <table>
            <tr>
                <th>Nome</th>
                <th>UF</th>
                <th>Pais</th>
            </tr>
            @for (int i = 0; i < Model.Registros.Count; i++)
            {
                    
                <tr>
                    <td>@Model.Registros[i].NomeCidade</td>
                    <td>@Model.Registros[i].UF</td>
                    <td>@Model.Registros[i].Pais</td>
                    <td>@Html.ActionLink("Editar", "Form", new { id = Model.Registros[i].IdCidade })</td>
                    <td>
                         @if (Model.Registros[i].FlagAtivo.Equals("S"))
                         {
                            <a href="#" onclick="DesativarRegistro(@Model.Registros[i].IdCidade);">Desativar</a>
                         }   
                         else
                         {
                            <a href="#" onclick="AtivarRegistro(@Model.Registros[i].IdCidade);">Ativar</a>
                         }
                                
                    </td>

                        
                </tr>
                   
            }
        </table>
        
    } 
    else
    {
        <p>Não existe nenhum registro cadastrado.</p>
    }
}


@section scripts 
{
    <script type="text/javascript">

        // Armazena o id do registro a ser ativado/desativado
        var idRegistro;

        // Trata o evento onclick da opção de desativar um registro
        function DesativarRegistro(id)
        {
            idRegistro = id;
            JSMostraDialogConfirmacao("Desativar", "Deseja desativar o registro?", true, RequisitaDesativacaoRegServidor);

        }

        // Trata o evento onclick da opção de ativar um registro
        function AtivarRegistro(id)
        {
            idRegistro = id;
            JSMostraDialogConfirmacao("Ativar", "Deseja ativar o registro?", true, RequisitaAtivarRegServidor);
        }

        // Efetua uma requisição ao servidor pedindo para desativar um registro
        function RequisitaDesativacaoRegServidor()
        {
            $.post('@Url.Action("Desativar")', { id: idRegistro }, function (data)
            {
                // Mostra uma notificação de acordo com a resposta do servidor
                if (!data.Erro)
                    JSMostraNotificacaoSucesso(data.Mensagem, false, function () { location.reload(); });
                else
                    JSMostraNotificacaoErro(data.Mensagem, true);
            });
        }


        // Efetua uma requisição ao servidor pedindo para ativar um registro
        function RequisitaAtivarRegServidor()
        {
            $.post('@Url.Action("Ativar")', { id: idRegistro }, function (data) {
                // Mostra uma notificação de acordo com a resposta do servidor
                if (!data.Erro)
                    JSMostraNotificacaoSucesso(data.Mensagem, false, function () { location.reload(); });
                else
                    JSMostraNotificacaoErro(data.Mensagem, true);
            });
        }


    </script>    
}
